🎖️GitЯра🎖️
Commit 4050b7d5261a8ae52278b949ea2a43a68a052cfb
Parents : c86e63d
Author : entr0p1 <1475255+entr0p1@users.noreply.github.com>
Date : 2026-07-28T10:14:59+10:00
nRF52840 "start ota" Failure Recovery
If Bluefruit.begin fails, BLE OTA mode won't actually start and the board might require a reboot to reattempt.
Fixes:
- Bluefruit.begin returns false in NRF52Board.startOTAUpdate if OTA mode fails to start. User is notified of the fault through existing error message in CommonCLI and can reattempt "start ota" command.
Changes
Diff
diff --git a/src/helpers/NRF52Board.cpp b/src/helpers/NRF52Board.cpp
index 23f7cafc2..b6c8fec56 100644
--- a/src/helpers/NRF52Board.cpp
+++ b/src/helpers/NRF52Board.cpp
@@ -396,7 +396,8 @@ bool NRF52Board::startOTAUpdate(const char *id, char reply[]) {
Bluefruit.configPrphBandwidth(BANDWIDTH_MAX);
Bluefruit.configPrphConn(92, BLE_GAP_EVENT_LENGTH_MIN, 16, 16);
- Bluefruit.begin(1, 0);
+ if (!Bluefruit.begin(1, 0)) return false;
+
// Set max power. Accepted values are: -40, -30, -20, -16, -12, -8, -4, 0, 4
Bluefruit.setTxPower(4);
// Set the BLE device name
Served by rngit 1.5.4 - Generated in 0.04s